Secure remote services accessible from a consultation terminal are on the increase. These secure remote services are typically services available over the Internet communications network but are not limited to this communications network. These secure remote services are generally used from a consultation terminal also connected to this network. This terminal may be a personal computer, a mobile telephone of the intelligent type (known as a smartphone), a tablet which is a personal computer comprising a touchscreen and typically with no keyboard, or any other type of terminal connected to a communications network and allowing a user to interact with the secure remote service.
The secure remote service is a set of software applications hosted on one or more servers. This set of software applications is programmed to receive requests coming from the consultation terminal and to respond to them so as to supply the secure remote service in question. The protocol allowing the exchanges between the consultation terminal and the secure remote service is typically the HTTP (for Hyper Text Transfer Protocol) protocol and the associated protocols such as HTTPS for the secure version. This then leads to the concept of WEB service or site. Other communication protocols that can be proprietary can also be used.
The secure remote service can be authenticated in the sense that it requires the user of the consultation terminal to authenticate him/herself in order to be able to access the service. In this case, the secure remote service typically comprises a database of registered users. During the use of the secure remote service, the user is invited to supply one or more pieces of authentication information aimed at allowing the access to be linked to one of the registered users. The authentication may be based on the input by the user of a name and an associated password which will be sent to the secure remote service. The authentication is then valid if the password corresponds to that recorded for the corresponding name in the database of users of the secure remote service. Stronger authentication systems can be used, such as the systems based on biometric data such as the recognition of a finger print or of the iris of the eye or other characteristics. It is also possible to use numerical digital certificates based on a cryptographic system, each certificate comprising a public key and a private key. The authentication is referred to as ‘multi-factor’ if it requires at least two pieces of authentication information typically belonging to two different categories. For example, it is possible to associate a password and a fingerprint.
The communications between the consultation terminal and the secure remote service may be cleartext, in other words the information is transmitted as is. It may also be encrypted. The encryption may be based on the knowledge of a shared secret, for example DH (Diffie-Hellman) or DES (for Data Encryption Standard), between the consultation terminal and the secure remote service used to encrypt and to decrypt transmitted information, or based on the system of digital certificates using private and public keys. There is then the concept of asymmetric encryption, for example RSA (Rivest, Shamir and Adleman). When the encryption is such that it guarantees that a third party on the information channel is incapable of gaining knowledge of the information exchanged nor of modifying or of inserting information into the data stream being exchanged, this includes the concepts of encrypted tunnel or of virtual private network (or VPN). Indeed, in this case, everything happens as though a single physical link were being used for the communication between the two entities exchanging encrypted information.
Cryptographic systems including digital certificates may be implemented by secure elements that can take the form of specialized circuits protected against attack. These secure elements generally take the form of a smartcard or of a specialized circuit of the same type as the chip of the smartcard integrated into the circuit of a data processing device.
A known solution is to use a smartcard containing, for example, a digital certificate for authenticating itself and/or encrypting the communication between a consultation terminal and a secure remote service. Typically, the smartcard is introduced into a card reader connected to the terminal. However, this solution typically involves the installation of specific drivers on the consultation terminal. Moreover, the installation and the configuration of specific software applications (or ‘middleware’) are also often necessary. Aside from the fact that the user does not always have the rights necessary for these installations on the user terminal for security reasons, the latter often sees these operations as complex, problematic and intrusive.